package br.pucrio.inf.lac.konoha.hyuga.playground;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;

import org.junit.Test;

import com.vividsolutions.jts.util.Assert;

public class StrangeHashMap {

    public class A {
        private int x;
        
        public A(int x) {
            this.x = x;
        }
        
        public int getX() {
            return x;
        }
        public void setX(int x) {
            this.x = x;
        }
    }
    
    @Test
    public void test() {
        Map<Integer, List<A>> strangeMap = new TreeMap<Integer, List<A>>();
        
        List<A> aList = new ArrayList<StrangeHashMap.A>();
        aList.add(new A(42));
        
        strangeMap.put(128, aList);
        Assert.equals(strangeMap.get(128).get(0).getX(), 42);
        
        // Updating list
        aList.get(0).setX(128);
        Assert.equals(strangeMap.get(128).get(0).getX(), 128);
        
        aList.add(new A(1));
        Assert.equals(strangeMap.get(128).get(1).getX(), 1);
        
    }

}
